.TH std::pmr::monotonic_buffer_resource::monotonic_buffer_resource 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::pmr::monotonic_buffer_resource::monotonic_buffer_resource \- std::pmr::monotonic_buffer_resource::monotonic_buffer_resource

.SH Synopsis
   monotonic_buffer_resource();                                       \fB(1)\fP \fI(since C++17)\fP
   explicit monotonic_buffer_resource( std::pmr::memory_resource*     \fB(2)\fP \fI(since C++17)\fP
   upstream );
   explicit monotonic_buffer_resource( std::size_t initial_size );    \fB(3)\fP \fI(since C++17)\fP
   monotonic_buffer_resource( std::size_t initial_size,               \fB(4)\fP \fI(since C++17)\fP
                              std::pmr::memory_resource* upstream );
   monotonic_buffer_resource( void* buffer, std::size_t buffer_size   \fB(5)\fP \fI(since C++17)\fP
   );
   monotonic_buffer_resource( void* buffer, std::size_t buffer_size,  \fB(6)\fP \fI(since C++17)\fP
                              std::pmr::memory_resource* upstream );
   monotonic_buffer_resource( const monotonic_buffer_resource& ) =    \fB(7)\fP \fI(since C++17)\fP
   delete;

   Constructs a monotonic_buffer_resource. The constructors not taking an upstream
   memory resource pointer use the return value of std::pmr::get_default_resource as
   the upstream memory resource.

   1,2) Sets the current buffer to null and the next buffer size to an
   implementation-defined size.
   3,4) Sets the current buffer to null and the next buffer size to a size no smaller
   than initial_size.
   5,6) Sets the current buffer to buffer and the next buffer size to buffer_size (but
   not less than 1). Then increase the next buffer size by an implementation-defined
   growth factor (which does not have to be integral).
   7) Copy constructor is deleted.

.SH Parameters

   upstream     - the upstream memory resource to use; must point to a valid memory
                  resource
   initial_size - the minimum size of the first buffer to allocate; must be greater
                  than zero
   buffer       - the initial buffer to use
   buffer_size  - the size of the initial buffer; cannot be greater than the number of
                  bytes in buffer
